From dfecffc84866c505aff2a16f521390a546a2b146 Mon Sep 17 00:00:00 2001 From: Wei Liu Date: Mon, 24 Apr 2017 14:33:43 +0100 Subject: [PATCH] x86/domain: make release_compat_l4 NULL tolerant Push the check in caller down to that function so that it becomes idempotent. No functional change. Signed-off-by: Wei Liu Reviewed-by: Andrew Cooper --- xen/arch/x86/domain.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c index f2847cf871..673a6d95f9 100644 --- a/xen/arch/x86/domain.c +++ b/xen/arch/x86/domain.c @@ -338,7 +338,8 @@ static int setup_compat_l4(struct vcpu *v) static void release_compat_l4(struct vcpu *v) { - free_domheap_page(pagetable_get_page(v->arch.guest_table)); + if ( !pagetable_is_null(v->arch.guest_table) ) + free_domheap_page(pagetable_get_page(v->arch.guest_table)); v->arch.guest_table = pagetable_null(); v->arch.guest_table_user = pagetable_null(); } @@ -379,9 +380,7 @@ int switch_compat(struct domain *d) for_each_vcpu( d, v ) { free_compat_arg_xlat(v); - - if ( !pagetable_is_null(v->arch.guest_table) ) - release_compat_l4(v); + release_compat_l4(v); } return rc; -- 2.30.2